package com.indexingsystem.system.service;

import java.util.List;

import com.indexingsystem.boss.Vo.BooksReqVo;
import com.indexingsystem.boss.Vo.BooksTableVo;
import com.indexingsystem.boss.Vo.BooksVo;
import com.indexingsystem.boss.common.PagedResult;
import com.indexingsystem.boss.entity.AuditLogs;
import com.indexingsystem.boss.entity.Books;
import com.indexingsystem.boss.entity.DhResourceauditlogs;
import com.indexingsystem.boss.entity.DhTodayStorageInfos;

public interface IBooksService {

	/**
	 * 通过图书id删除图书
	 * 
	 * @param resId
	 * @return
	 */
	int deleteByPrimaryKey(String resId) throws Exception;

	/**
	 * 批量删除图书表
	 * 
	 * @param resIdList
	 * @return
	 */
	int deleteBooksByIdBatch(List<String> resIdList) throws Exception;

	/**
	 * 新增图书信息
	 * 
	 * @param record
	 * @return
	 */
	int insertSelective(Books record) throws Exception;

	PagedResult<BooksTableVo> selectBooksList(BooksVo record);

	/**
	 * 通过图书id查询图书信息
	 * 
	 * @param resId
	 * @return
	 */
	Books selectByPrimaryKey(String resId);

	/**
	 * 修改图书信息.
	 * 
	 * @param record
	 * @return
	 */
	int updateByPrimaryKeySelective(Books record) throws Exception;

	/**
	 * 图书检索
	 */
	List<BooksVo> searchBooksList(BooksVo record);

	/**
	 * 获取总数量
	 * 
	 * @param books
	 * @return
	 */
	Integer getBooksListCount(BooksVo record);

	/**
	 * 新增图书信息
	 * 
	 * @param booksReqVo
	 * @return
	 */
	int addBooksInfo(BooksReqVo record, AuditLogs auditLogs,DhTodayStorageInfos todayStorageInfos,DhResourceauditlogs resourceauditlogs) throws Exception;

	/**
	 * 修改图书信息
	 * 
	 * @param booksReqVo
	 * @return
	 */
	int updateBooksInfo(BooksReqVo record) throws Exception;
}